Notification Architecture Diagram

Internal and outbound notification flow across CMS services, notification management, storage, delivery channels, and observability
🔔
Business Events / Notification Consumers
EVENT SOURCES & CONSUMERS
DOM
Domain Services
Generate business events that may require user notifications
WF
Workflow Service
Triggers notifications on submission, approval, rejection, escalation, and assignment events
UI
React SPA
Displays in-app notifications and notification center content to the user
USER
CMS User
Receives internal alerts and, where configured, external message delivery
Notification events are generated by business services and routed into a dedicated notification-management layer instead of being handled ad hoc in each service.
NOTIFICATION MANAGEMENT LAYER
Central service for creating, classifying, storing, tracking, and delivering notifications
NT
Notification Service
Receives internal event triggers and manages notification lifecycle
GEN
Notification Generation
Builds notification content, type, target audience, and priority
RULE
Channel Decision Logic
Determines whether a message stays internal or also requires outbound delivery
STAT
Status Tracking
Tracks pending, delivered, failed, read, and retried notification states
RTR
Retry / Recovery Logic
Handles failed outbound attempts and recovery-based reprocessing
The notification service writes internal state to application storage while also exposing in-app messages to the UI and sending selected notifications to outbound delivery channels.
INTERNAL NOTIFICATION STORAGE & PRESENTATION
DDB
Notification Store in DocumentDB
Stores notification records, user-targeted state, read flags, delivery metadata, and lifecycle tracking information
CTR
Notification Center UI
Displays user-facing in-app notifications, unread state, and action-driven alerts in the CMS interface
SYNC
Internal Retrieval Flow
React SPA retrieves stored notifications through backend APIs for secure display and status updates
OUTBOUND DELIVERY CHANNEL
IB
Infobip
Outbound delivery provider used for email or notification dispatch outside the CMS interface
OUT
Asynchronous Delivery Flow
Selected notifications are sent asynchronously so outbound delivery does not block core business transactions
ACK
Delivery Acknowledgement
Delivery responses and status feedback are captured and mapped back into internal notification state
SECURITY, CONTROL, AND OBSERVABILITY
AAD
Azure AD Context
Identity context is used to determine notification recipients and secure user-specific access
RBAC
RBAC / ABAC
Ensures notifications are generated, retrieved, and exposed only for authorized users and roles
DD
Datadog
Collects logs, metrics, traces, error events, and delivery-health signals for notification operations
AUD
Operational Auditability
Notification generation, delivery attempts, read state, and failure paths remain traceable
END-TO-END OUTCOMES
IN
In-App Notification Created
A user-targeted internal notification is stored and becomes visible in the CMS UI
OUT
Outbound Message Sent
An external delivery event is sent through Infobip when required by the configured channel rules
STAT
Delivery Status Updated
Notification records reflect success, failure, retry state, and read / unread progress
TRACE
Flow Observable
Notification behavior remains monitorable and auditable across internal and external paths
Event sources & consumers Notification management layer Internal storage & presentation Outbound delivery channel Security & observability controls End-to-end outcomes